java如何异步处理GAE数据存储争用?
为了避免GAE数据存储写入中的高延迟(峰值),我想实现一个写后缓存(使用Java低级API)。这意味着数据将同步写入memcache,然后异步写入数据存储,以便请求可以快速返回
然而,这意味着我需要以某种方式处理由数据存储争用引起的异常(例如,发起重试)。更准确地说,我需要能够对请求返回后发生的争用做出反应。我该怎么做?使用任务队列进行异步写入处理不是一个选项,因为推送到队列的速度只比数据存储写入快一点点
如果这是不可能的,那么实现写后缓存的好方法是什么?或者,在不能选择数据丢失的情况下,如何处理慢速写入
# 1 楼答案
Memcache是易变的,它可能随时刷新数据,因此这种方法非常不可靠
你最好使用Push Task Queue。通过DeferredTask助手类使用它。这里是an example